ContextCapture User Guide

Photo acquisition

Overlap

Each part of the subject should be photographed from at least three distinct - but not radically different - viewpoints. The overlap between consecutive photographs should typically exceed two thirds. Different viewpoints of the same part of the subject should be less than 15 degrees apart.

For simple subjects, you can achieve this by taking approximately 30-50 evenly spaced photographs all around the subject.

For aerial photography, a longitudinal overlap of 80% and lateral overlap of 50% or more are recommended. To achieve best results, acquire both vertical and oblique photographs, in order to simultaneously recover building facades, narrow streets and courtyards. ContextCapture is remarkably robust for unstructured acquisition. You may however prepare a flight plan for more systematic acquisitions.

Camera models

ContextCapture supports a wide range of cameras: mobile phone, compact digital, DSLR, fisheye, photogrammetric, and multi-camera systems. It can process still photographs or extracted video frames from digital video cameras. It does not support linear pushbroom cameras. It does not support rolling shutter cameras under fast motion.

Although ContextCapture does not require a minimum camera resolution, a higher resolution camera allows acquisition of a subject at a given precision with fewer photographs, and thus more quickly, than a lower resolution camera.

ContextCapture needs to know the width of your camera's sensor. If your camera model is not already listed in our database, you will be asked to enter this information. If you are unsure of your camera's specifications, you can consult your camera owner's manual or the Digital Photography Review website: http://www.dpreview.com/products.

Projected Pixel Size

In the sequel, the projected pixel size means the extension of the classical ground resolution to a more general, possibly not aerial, acquisition configuration.

The resolution and precision of the generated 3D model is directly related to the projected pixel size on the subject. In order to achieve a desired projected pixel size, you must adopt a proper combination of focal length and distance to the subject, as defined by the formula below:

projected pixel size × focal length × photo's largest dimension = sensor width × distance to the subject

[m / pixel] [mm] [pixel] [mm] [m]

Uniform projected pixel size across the entire image is not required since ContextCapture will automatically propagate variations in projected pixel size to the resolution and precision of the generated 3D model. ContextCapture is unable, however, to join together photographs of radically different projected pixel sizes. If a wide range is required, photographs with intermediate values should be used to create a smooth transition.

Focal Length

Using a fixed focal length throughout the acquisition process is recommended.

To achieve a non-uniform projected pixel size, vary the distance to the subject. If you cannot avoid several focal length settings, e.g., if the distance to the subject is constrained, shoot several series of photographs, each with a fixed focal length.

When using a zoom lens, make sure its position remains fixed over a series of photographs. You can use a piece of adhesive tape with a manual zoom lens to keep it in place.

Wide-angle or fish-eye lens can be used if the suited camera model type is specified, ContextCapture can automatically estimate extreme lens distortion.

Do not use digital zoom.

Exposure

Select exposure settings that will avoid the motion blur, defocus, noise, and over or under-exposure that can seriously alter 3D reconstruction.

Manual exposure reduces the likelihood of color discrepancies in the texture map of the generated 3D model and is therefore recommended for those with the necessary photography skills and under fairly stable and uniform lighting conditions. Otherwise, automatic exposure may be used.

Turning off optical or digital image stabilization is recommended.

Lighting

Ambient, constant lighting is preferable to direct and/or time-varying lighting, since the latter increases the risk of overexposure and underexposure. For indoor acquisition, fixed lights are preferable to flash, and for outdoor acquisition, clouds (high-altitude cirrus clouds, no rain) are preferable to sun. If photos must be taken on a sunny day, take them around noon to minimize shadow areas.

Please note that correctly-exposed shadows do not affect the performance of ContextCapture , but will appear in the texture map of the generated 3D model.

Photo Retouching

Before inputting photographs into ContextCapture , do not manipulate them, by resizing, cropping, rotating, denoising, sharpening or adjusting brightness, contrast, saturation or hue. Make sure to deactivate your camera's auto-rotate feature.

ContextCapture does not support stitched panoramic photographs. It requires the original photographs which were used to create the panorama.

Photogroups

For optimal precision and performance, ContextCapture must group all photos taken by the same physical camera with identical focal length and dimensions (identical interior orientation) in one photogroup.

ContextCapture can automatically determine relevant photogroups if photos are organized in subdirectories according to the cameras used to shoot them: photos taken by different physical cameras (even if they are the same model) should be placed in separate subdirectories. Conversely, all photos taken by the same physical camera should be placed in the same subdirectory.

Masks

A mask can be associated to a photo to cause specific parts of the image (e.g., moving obstacles, reflections) to be ignored in the workflow. A valid mask is a black and white TIFF image with the same dimensions as the photo. Pixels of the photo corresponding to black pixels of the mask will be ignored during aerotriangulation and reconstruction.

Masks are associated to input photographs through their file name:

  • Associate a mask to one photo: for a photo named "fileName.ext", the mask file must be named "fileName_mask.tif" and placed in the same directory as the corresponding photo.

    Example: for a photograph "IMG0002564.jpg", the corresponding mask should be "IMG0002564_mask.tif"

  • Associate a mask to an entire directory (requires photos of same dimensions): if present in a directory, the file "mask.tif" is used as a mask for all photos contained in this directory.

    Masks can also be assigned to photos from the user interface once photos are loaded.